Method and apparatus for providing graphic user interface

ABSTRACT

A method of providing a Graphical User Interface (GUI) is provided. The method includes receiving an image to be used for the GUI, and selecting one or more object areas to be used for the GUI from the image, setting a GUI icon corresponding to the selected object area, and outputting the set GUI as a home screen for executing at least one of application on a display of the terminal.

CROSS-REFERENCE TO RELATED APPLICATION(S)

This application claims the benefit under 35 U.S.C. §119(a) of a Koreanpatent application filed on Jul. 26, 2013 in the Korean IntellectualProperty Office and assigned Serial No. 10-2013-0089014, the entiredisclosure of which is hereby incorporated by reference.

TECHNICAL FIELD

The present disclosure relates to a graphical user interface. Moreparticularly the present disclosure relates to a method and an apparatusfor generating and using a graphical user interface.

BACKGROUND

Recently, various services and additional functions provided by terminalapparatuses (particularly, a mobile terminal apparatus) are expanding.In order to increase an effective value of the terminal apparatus andmeet user demands, various applications executable by the terminalapparatus have been developed.

The terminal apparatus can store and execute basic applicationsmanufactured by a manufacturer of the terminal apparatus and installedin the terminal apparatus as well as additional applications downloadedfrom a website selling applications through the Internet. The additionalapplications may be developed by general developers and registered inthe website selling applications. Accordingly, anyone can freely sellapplications to the user of the terminal apparatus through the websiteselling applications. As a result, hundreds of thousands of applicationsare currently provided to the terminal apparatuses free of charge or ata cost. The terminal apparatus provides user convenience of the terminalapparatus by using a Graphical User Interface (GUI). The terminalapparatus may use a GUI provided during a process of manufacturing theterminal apparatus or a GUI package provided by a website selling anapplication. However, in order to modify and then use the GUI providedin such a way, the user sets and then uses the GUI by changing abackground image, changing an image of an icon used in the GUI within animage of an icon provided in advance, or changing a position of an icon.

SUMMARY

As described above, even though the user changes a GUI, the GUI isconfigured to be changed within a range of a pre-provided backgroundimage or icon image, so that there is a lot of limitations in changingthe GUI. Further, since the icon image is formed in a predeterminedmatrix size, the user cannot set or place the icon image with a sizewhich the user desires. Due to the limitations in setting the GUI,user's demands to use the more creative and personalized GUI cannot bemet.

The above information is presented as background information only toassist with an understanding of the present disclosure. No determinationhas been made, and no assertion is made, as to whether any of the abovemight be applicable as prior art with regard to the present disclosure.

Aspects of the present disclosure are to address at least theabove-mentioned problems and/or disadvantages and to provide at leastthe advantages described below. Accordingly, an aspect of the presentdisclosure is to provide a method and an apparatus for configuring andusing the Graphical User Interface (GUI) without any limitation in sizeor placement of the icon.

Another aspect of the present disclosure is to provide a method and anapparatus for improving usability of the terminal apparatus through theGUI which is directly configured by the user.

In accordance with an aspect of the present disclosure, a method ofproviding a GUI by a terminal is provided. The method includes receivingan image to be used for the GUI, and selecting one or more object areasto be used for the GUI from the image, setting a GUI icon correspondingto the selected object area, and outputting the set GUI as a home screenfor executing at least one of application on a display of the terminal.

In accordance with another aspect of the present disclosure, a terminalapparatus is provided. The terminal includes a touch screen thatdisplays information and detects a touch input event input by a user,one or more controllers, and a memory that stores one or more inputimages and stores one or more programs, wherein the at least one or moreprograms is configured to be executed by the controller, to include acommand for receiving an image to be used for a Graphical User Interface(GUI), selecting one or more object areas to be used for the GUI fromthe image and for setting a GUI icon corresponding to the selectedobject area, and outputting the set GUI as a home screen for executingat least one of application on a display of the terminal.

Aspects of the present disclosure have the following effects.

First, it is possible to increase the user's convenience by configuringthe GUI through an image freely drawn by the user.

Second, it is possible to variously configure and use the GUI withoutany limitation in an arrangement or size of icons by configuring theicons on a GUI image including a background image and an icon image.

Third, it is possible to provide a result reflecting a writing input ora gesture input when an application corresponding to an icon isexecuted, by directly performing the writing input or the gesture inputin a state where the icon is displayed to implement the GUI image.

Other aspects, advantages, and salient features of the disclosure willbecome apparent to those skilled in the art from the following detaileddescription, which, taken in conjunction with the annexed drawings,discloses various embodiments of the present disclosure.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other aspects, features, and advantages of certainembodiments of the present disclosure will be more apparent from thefollowing description taken in conjunction with the accompanyingdrawings, in which:

FIG. 1A is a block diagram schematically illustrating a configuration ofa terminal apparatus to which a Graphical User Interface (GUI) providingmethod is applied according to an embodiment of the present disclosure;

FIGS. 1B and 1C are front perspective views of a terminal apparatus towhich a GUI providing method is applied according to an embodiment ofthe present disclosure;

FIG. 2 is a flowchart illustrating an operation order of a GUI providingmethod according to an embodiment of the present disclosure;

FIG. 3 illustrates an example of a GUI provided based on a GUI providingmethod according to an embodiment of the present disclosure;

FIG. 4 is a flowchart illustrating a detailed order of a process ofsetting a GUI included in a GUI providing method according to anembodiment of the present disclosure;

FIGS. 5A, 5B, and 5C illustrate an example of a GUI editing program usedfor a GUI providing method according to an embodiment of the presentdisclosure;

FIG. 6 illustrates an example of an image to be applied to a GUI usedfor a GUI providing method according to an embodiment of the presentdisclosure;

FIGS. 7A, 7B, 7C, and 7D illustrate an example of an operation forselecting an object area in a GUI providing method according to anembodiment of the present disclosure;

FIGS. 8A, 8B, and 8C illustrate an example of an operation for selectingan application connected to an object area in a GUI providing methodaccording to an embodiment of the present disclosure;

FIGS. 9A, 9B, 9C, and 9D illustrate an example of GUI data used for aGUI providing method according to an embodiment of the presentdisclosure;

FIG. 10 is a flowchart illustrating another embodiment of a GUIproviding method according to an embodiment of the present disclosure;

FIG. 11 illustrates an example of an operation for setting a widget dataarea used for a GUI providing method according to an embodiment of thepresent disclosure;

FIG. 12 is a flowchart illustrating another example of a process ofexecuting an application by using a GUI provided to a GUI providingmethod according to an embodiment of the present disclosure; and

FIGS. 13A and 13B illustrate an example of an operation of executing anapplication using a writing input through a GUI provided to a GUIproviding method according to an embodiment of the present disclosure.

Throughout the drawings, it should be noted that like reference numbersare used to depict the same or similar elements, features, andstructures.

DETAILED DESCRIPTION

The following description with reference to the accompanying drawings isprovided to assist in a comprehensive understanding of variousembodiments of the present disclosure as defined by the claims and theirequivalents. It includes various specific details to assist in thatunderstanding, but these are to be regarded as merely exemplary.Accordingly, those of ordinary skill in the art will recognize thatvarious changes and modifications of the various embodiments describedherein can be made without departing from the scope and spirit of thepresent disclosure. In addition, descriptions of well-known functionsand constructions may be omitted for clarity and conciseness.

The terms and words used in the following description and claims are notlimited to the bibliographical meanings, but are merely used by theinventor to enable a clear and consistent understanding of the presentdisclosure. Accordingly, it should be apparent to those skilled in theart that the following description of various embodiments of the presentdisclosure is provided for illustration purposes only and not for thepurpose of limiting the present disclosure as defined by the appendedclaims and their equivalents.

It is to be understood that the singular forms “a,” “an,” and “the”include plural referents unless the context clearly dictates otherwise.Thus, for example, reference to “a component surface” includes referenceto one or more of such surfaces.

While terms including ordinal numbers, such as “first” and “second”,etc., may be used to describe various components, such components arenot limited by the above terms. The terms are used merely for thepurpose to distinguish an element from the other elements. For example,a first element could be termed a second element, and similarly, asecond element could be also termed a first element without departingfrom the scope of the present disclosure. The terms used in thisapplication are for the purpose of describing particular embodimentsonly and are not intended to be limiting of the disclosure. As usedherein, the singular forms are intended to include the plural forms aswell, unless the context clearly indicates otherwise.

FIG. 1A is a block diagram schematically illustrating a configuration ofa terminal apparatus applying a Graphical User Interface (GUI) providingmethod according to an embodiment of the present disclosure.

Referring to FIG. 1A, a terminal apparatus 100 includes a controller110, a communication module 120, an input/output module 130, a storageunit 150, a power supplier 160, a touch screen 171, and a touch screencontroller 172.

The controller 110 may include a CPU 111, a Read Only Memory (ROM) 112storing a control program for controlling the terminal apparatus 100,and a Random Access Memory (RAM) 113 used as a storage area for storinga signal or data input from the outside of the terminal apparatus 100 orfor an operation performed by the terminal apparatus 100. The CPU 111,the ROM 112, and the RAM 113 may be mutually connected to each otherthrough an internal bus. The controller 110 may control thecommunication module 120, the input/output module 130, the storage unit150, the power supplier 160, the touch screen 171, and the touch screencontroller 172. In addition, the controller 110 may have a single coreor a plurality of cores such as a dual core, a triple core, or aquadruple core. The number of cores may vary according to acharacteristic or design of the terminal.

The controller 100 receives an image including a drawing drawn by theuser or a picture photographed by the user and connects one or moreapplications to one or more object areas included in the image, so as toconfigure the one or more object areas as icons of the GUI. When theconfigured icon of the GUI is selected through a touch input by theuser, the controller 110 executes an operation of an applicationcorresponding to the selected icon.

The communication module 120 may include at least one of a cellularmodule, a wireless LAN module, and a short distance communicationmodule.

The cellular module enables the terminal apparatus 100 to be connectedwith an external device through mobile communication by using oneantenna or a plurality of antennas according to a control of thecontroller 110. The cellular module transmits/receives a wireless signalfor a voice call, a video call, a Short Message Service (SMS), or aMultimedia Message Service (MMS) to/from a mobile phone (not shown), asmart phone (not shown), a tablet Personal Computer (PC), or anotherdevice (not shown) having a phone number input into the terminalapparatus 100.

The wireless LAN module may access the Internet in a place where awireless Access Point (AP) (not shown) is installed according to acontrol of the controller 110. The wireless LAN module supports awireless LAN standard (IEEE802.11x) of the Institute of Electrical andElectronics Engineers (IEEE). The wireless LAN module may drive a Wi-FiPositioning System (WPS) that identifies position information on theterminal including the wireless LAN module by using position informationprovided by the wireless AP wirelessly connected with the wireless LANmodule.

The short distance communication module corresponds to a module thatwirelessly processes short distance communication with the terminalapparatus 100 according to a control of the controller 110, and mayprocess communication based on Bluetooth, Infrared Data Association(IrDA) communication, WiFi-Direct communication, or a short distancecommunication scheme such as Near Field Communication (NFC).

The input/output module 130 may include at least one of a button 131, aspeaker 132, a vibration motor 133, a keypad 134, and a stylus pen 135.

The buttons 131 may be formed on a front surface, a side surface, or arear surface of the housing of the terminal apparatus 100, and mayinclude at least one of a power/lock button (not shown), a volume button(not shown), a menu button, a home button, a back button, and a searchbutton.

The speaker 132 may output sounds corresponding to various signals (forexample, a wireless signal, a broadcasting signal, and the like) of thecellular module, the wireless LAN module, and the short distancecommunication module to the outside of the terminal apparatus 100according to a control of the controller 110. One speaker 132 or aplurality of speakers 132 may be formed on a suitable position orpositions of the housing of the terminal apparatus 100.

The vibration motor 133 may convert an electrical signal to a mechanicalvibration according to a control of the controller 110. One vibrationmotor 133 or a plurality of vibration motors 133 may be formed withinthe housing of the terminal apparatus 100.

The speaker 132 and the vibration motor 133 may operate according to asetting state of a volume operation mode of the terminal apparatus 100.For example, the volume operation mode of the terminal apparatus 100 mayinclude a sound mode, a vibration mode, a sound/vibration mode, and amute mode, and may be set as one such mode. The controller 110 mayoutput a signal instructing the speaker 132 or the vibration motor 133to execute an operation thereof according to a function performed by theterminal apparatus 100 based on the set mode of the volume operationmode.

The keypad 134 may receive a key input from the user to control theterminal apparatus 100. The keypad 134 includes a physical keypad (notshown) formed in the terminal apparatus 100 or a virtual keypad (notshown) displayed on the touch screen 171. The physical keypad (notshown) formed in the terminal apparatus 100 may be omitted according toa capability, design, or structure of the terminal apparatus 100.

The stylus pen 135 is implemented to provide a signal which can detect atouch input of the touch screen 171. As the stylus pen 135 approaches orcontacts the touch screen 171, the touch screen 171 may detect a signalprovided by the stylus pen 135.

The storage unit 150 may store an input/output signal or datacorresponding to operations of the communication module 120, theinput/output module 130, and the touch screen 171 according to a controlof the controller 110. The storage unit 150 may store a control programand applications for controlling the terminal apparatus 100 or thecontroller 110.

The term “storage unit” includes the storage unit 150, the ROM 112 andthe RAM 113 within the controller 110, or a memory card (not shown) (forexample, an SD card or a memory stick) installed in terminal apparatus100. The storage unit may include a non-volatile memory, a volatilememory, a Hard Disk Drive (HDD), or a Solid State Drive (SSD).

The power supplier 160 may supply power to one battery or a plurality ofbatteries (not shown) arranged at the terminal apparatus 100 accordingto a control of the controller 110. The one or more batteries (notshown) supply power to the terminal apparatus 100. Further, the powersupplier 160 may supply power input from an external power source (notshown) to the terminal apparatus 100 through a wired cable connected toa connector included in the terminal apparatus. In addition, the powersupplier 160 may supply power wirelessly input from the external powersource through a wireless charging technology to the terminal apparatus100.

The touch screen 171 may display a user interface corresponding tovarious services (for example, a call, data transmission, and the like)to the user based on an Operating System (OS) of the terminal. The touchscreen 171 may transmit an analog signal corresponding to at least onetouch input into the user interface to the touch screen controller 172.The touch screen 171 may receive at least one touch through a user'sbody (for example, fingers including a thumb) or a touchable input means(for example, a stylus pen).

The touch screen 171 may be implemented in a resistive type, acapacitive type, an infrared type, or an acoustic wave type.

The touch screen controller 175 controls an output value of the touchscreen 171 such that a display data provided by the controller 110 isdisplayed on the touch screen 171. The touch screen controller 172converts an analog signal received from the touch screen 171 to adigital signal (for example, X and Y coordinates) and transmits theconverted digital signal to the controller 110. The controller 110 maycontrol the touch screen 171 by using the digital signal received fromthe touch screen controller 172. For example, the controller 110 mayallow a short-cut icon (not shown) displayed on the touch screen 171 tobe selected or a short-cut icon (not shown) to be executed in responseto a touch event or a hovering event. Further, the touch screencontroller 172 may be included in the controller 110.

FIGS. 1B and 1C are front perspective views of a terminal apparatusapplying a GUI providing method according to an embodiment of thepresent disclosure.

Referring to FIGS. 1B and 1C, the touch screen 171 is disposed on acenter of a front surface 100 a of the terminal apparatus 100. The touchscreen 171 has a large size to occupy most of a front surface 100 a ofthe terminal apparatus 100. FIG. 1B illustrates an example where a lockscreen 170 a is displayed on the touch screen 171. The lock screen 170 ais a first screen displayed on the touch screen 171 when the terminalapparatus 100 is turned on, and provides an environment in which theuser may input security information (for example, password, securitypattern, and the like) set by the user to access the terminal apparatus.Accordingly, the controller 110 identifies validity of the securityinformation (for example, password, security pattern, and the like)input by the user, and then releases the lock screen to perform anoperation of switching to the home screen 170 b of FIG. 1C.

The lock screen 170 a may be configured to receive a password or asecurity pattern. When the user does not set separate securityinformation, the terminal apparatus may be configured to switch to thehome screen by a touch input or a drag input of the user without theinput of the password or security pattern.

The home screen 170 b may include several pages of different homescreens, and a first home screen among the several different pages ofhome screens may be a main home screen. Short-cut icons 171 a, 171 b,and 171 c for executing frequently used applications, a main menuswitching key 171 d, time, and weather may be displayed on the homescreen 170 b. The main menu switching key 171 d displays a menu screenon the touch screen 171. A status bar 172 that displays a status of theterminal apparatus 100, such as a battery charging status, intensity ofa received signal, current time, and a volume operation mode, may beformed on an upper end of the touch screen 171.

According to the embodiment of the present disclosure, the home screen170 b may include the GUI including icons connected to applications inorder to execute the applications. Further, when the icon included inthe GUI is selected while the GUI included in the home screen isdisplayed, the controller 110 may control the corresponding applicationto be executed.

A home button 131 a, a menu button 131 b, and a back button 131 c may beformed below the touch screen 171.

The home button 131 a displays the main home screen on the touch screen171. For example, when the home button 131 a is touched while a homescreen different from the main home screen or the menu screen isdisplayed on the touch screen 171, the main home screen may be displayedon the touch screen 171. When the home button 171 a is touched whileapplications are executed on the touch screen 171, the main home screenillustrated in FIG. 1 may be displayed on the touch screen 171. Inaddition, the home button 131 a may be used to display recently usedapplications or a task manager on the touch screen 171.

The menu button 131 b provides a connection menu which can be used onthe touch screen 171. The connection menu includes a widget additionmenu, a background changing menu, a search menu, an editing menu, anenvironment setup menu, and the like.

The back button 131 c may display the screen which was executed justbefore the currently executed screen or end the most recently usedapplication.

The speaker 132 may be arranged at an upper center part of the frontsurface 100 a of the terminal apparatus 100. A power/reset button 131 d,a volume button 131 e, and the like may be arranged at the side surface100 b of the terminal apparatus 100.

Methods according to various embodiments of the present disclosure maybe implemented in a type of a program command which can be performedthrough various computer means and recorded in a computer-readablemedium. The computer-readable medium may include a program command, adata file, and a data structure individually or a combination thereof.The program command recorded in the medium may be designed andconfigured specifically for the present disclosure or may be known andused by those skilled in the computer software field.

Further, various embodiments of the present disclosure may beimplemented in a type of a program command and stored in the storageunit 150 of the terminal apparatus 150, and the program command may betemporarily stored in the RAM 113 included in the controller 110 toexecute the methods according to the various embodiments of the presentdisclosure. Accordingly, the controller 110 may control hardwarecomponents included in the terminal apparatus 100 in accordance with theprogram command based on the methods according to the variousembodiments of the present disclosure, temporarily or continuously storedata generated while the methods according to the various embodiments ofthe present disclosure are executed in the stored unit 150, and providea UI required for executing the methods according to the variousembodiments of the present disclosure to the touch screen controller172.

A GUI providing method according to an embodiment of the presentdisclosure is provided to the terminal apparatus 100 and thus anoperation thereof is executed. However, the present disclosure is notlimited thereto, and the GUI providing method according to an embodimentof the present disclosure may be provided to various terminals having anenvironment where the GUI is provided, such as a PC, a laptop computer,and a tablet PC.

FIG. 2 is a flowchart illustrating an operation order of the GUIproviding method according to an embodiment of the present disclosure.FIG. 3 illustrates an example of a GUI provided based on a GUI providingmethod according to an embodiment of the present disclosure.

Referring to FIGS. 2 and 3, the GUI providing method according to theembodiment of the present disclosure may include operation 210 ofsetting a GUI by using an image and operations 220 to 240 of executingan application by using the GUI.

The controller 110 receives an image from the user in operation 210. Forexample, the image received from the user may be a drawing drawn by theuser or a picture photographed by the user. Further, the controller 110may connect one or more applications to areas (“object areas”) where oneor more objects included in the image exist, so as to configure the oneor more object areas as icons of the GUI. One or more execution commandsmay be allocated to the one or more object areas included in the image,respectively. The one or more execution commands may include a commandexecuting one application, an execution command including one or moreapplication execution factors, or execution commands of a plurality ofapplications. When the one or more execution commands include executioncommands of a plurality of applications, the execution commands of theplurality of applications connected to one or more object areas includedin the image may be processed in a macro form, and accordingly, macroinformation may be further set.

The object area may be configured in a widget form and display the oneor more object areas reflecting predetermined data.

As described above, when a user input event, for example, a touch inputby the user is generated while the GUI set through operation 210 isdisplayed on the home screen of the terminal apparatus 100, thecontroller 110 identifies an area where the touch input by the user isgenerated in operation 220. The controller 110 identifies an iconcorresponding to the area where the touch input is generated andexecutes an operation of an application corresponding to the icon inoperation 230. The controller 110 repeatedly performs operation 230until the execution of the application corresponding to the icon ends inoperation 240.

In operation 220, the controller 110 may detect the touch input by theuser such as a hovering and provide an image 301 of FIG. 3 (for example,icon image of the corresponding application) indicating the applicationcorresponding to the icon located at the corresponding area in responseto the touch input by the user such as the hovering. When executioncommands of a plurality of applications are allocated to the image, thecontroller 110 may display a plurality of icon images corresponding tothe plurality of applications corresponding to the icons located at thecorresponding area when the touch input by the user such as the hoveringis made.

When the touch input by the user is not made in operation 220, thecontroller 110 waits for generation of the touch input by the user.

The controller 110 repeatedly performs operations 220 to 240 until theterminal apparatus ends the method in operation 350.

FIG. 4 is a flowchart illustrating a detailed order of a process ofsetting the GUI included in a GUI providing method according to anembodiment of the present disclosure. FIGS. 5A, 5B, and 5C illustrate anexample of a GUI editing program used for a GUI providing methodaccording to an embodiment of the present disclosure. FIGS. 7A, 7B, 7C,and 7D illustrate an example of an operation for selecting an objectarea in a GUI providing method according to an embodiment of the presentdisclosure. FIGS. 8A, 8B, and 8C illustrate an example of an operationfor selecting an application connected to an object area in a GUIproviding method according to an embodiment of the present disclosure.FIGS. 9A, 9B, 9C, and 9D illustrate an example of GUI data used for aGUI providing method according to an embodiment of the presentdisclosure

Referring to FIG. 4 and FIGS. 5A-9D, the process of setting the GUI mayinitiate an operation by executing a GUI editing program included in theterminal to edit the GUI in operation 211. For example, the GUI editingprogram may be executed when an icon corresponding to the GUI editingprogram is displayed on a home screen 170 b and the user selects theicon corresponding to the GUI editing program. The GUI editing program500 (as shown in FIG. 5A) may provide a drawing tool 501 by which theuser can freely generate a new image. The GUI editing program 500 mayprovide a drawing window 502 on which the user can freely draw a newimage by using the drawing tool 501.

The drawing window 502 may generate and combine a plurality of layers inorder to allow the user to more easily draw a new image. For example,through the drawing window 502, the user may generate one or morelayers, and generate an image by selectively combining the generated oneor more layers. Further, the drawing window 502 may generate one or morelayers by loading images stored in the storage unit 150. For example, asillustrated in FIG. 5B, the GUI editing program 500 may form one firstlayer 503 by loading the image stored in the storage unit 150 and form asecond layer 504 which overlaps the first layer 503 and in which animage drawn by the user is generated. Further, the GUI editing program500 may form an image including both the first layer 503 and the secondlayer 504 or selectively form an image only including the second layer504. Accordingly, the user may more easily draw a desired image by usingthe image included in the first layer 503.

Alternatively, the GUI editing program 500 may configure an image byapplying a predetermined image processing effect (or filter) 505 (asshown in FIG. 5C) to the image stored in the storage unit 150 eventhough the user does not directly draw the image.

As described above, as the user configures the image to be used for theGUI by using the drawing tool 501, the drawing window 502, and the imageprocessing effect 505 provided by the GUI editing program 500, thecontroller 110 stores the image, which is configured by the user, to beused for the GUI in the storage unit 150 in operation 212. In operation212, the controller 110 sets an image 600 (as shown in FIG. 6) to beused for the GUI.

In operation 213, the controller 110 sets an object area to be used forthe GUI in the image used for the GUI. The object area to be used forthe GUI may be set based on an area input by the user. For example, theGUI editing program 500 may provide an object setting function which canset an object area by the user. The object setting function sets anobject area 701 (as shown in FIG. 7A) by configuring an area inputthrough a touch or drag by the user as a quadrangular shape.Alternatively, the object setting function may set an object area 702(as shown in FIG. 7B) by configuring a closed figure generated by freelyconnecting areas input by a touch input or drag input of the user.Accordingly, the controller 110 may set the object area by receiving theobject area from the user through the object setting function providedby the GUI editing function 500.

Alternatively, the object setting function may automatically configurethe object area by applying an image processing algorithm to an image tobe used for the GUI. For example, as illustrated in FIG. 7C, after theimage processing algorithm for detecting an edge area from the image tobe used for the GUI is applied, an edge 704 of an object 703 included inthe image is detected, and an object area 705 (as shown in FIG. 7D) isset based on the detected edge. Accordingly, the controller 110 may setthe object area by automatically detecting the object area from theimage to be used for the GUI through the object setting functionprovided by the GUI editing function 500.

In operation 214, the controller 110 connects an application to theobject area to be used for the GUI, so as to set the object area tofunction as an icon. For example, the controller 110 displays anapplication list 801 (as shown in FIG. 8A) including lists of one ormore applications stored in the terminal apparatus on the touch screen171. The controller 110 receives an application to be connected to theobject area to be used for the GUI among the application list 801 fromthe user. Accordingly, the controller 110 connects the receivedapplication to the object area to be used for the GUI, so as to set acorresponding icon.

The application list may include one or more applications stored in theterminal apparatus, and the controller 110 may arrange and display theone or more applications in consideration of use frequency, a size ofcapacity of the application, and a character arrangement order (forexample, Korean alphabetical order, an English alphabetical order, or anorder appropriate for a language/locale used by the terminal apparatus).In arranging the one or more applications, it is preferable that thecontroller 110 may arrange an application having relatively highsimilarity with the object area to be used for the GUI first in order tomore easily select the application to be connected to the object area.For example, after cutting an image included in the object area, thecontroller 110 may search for icon images 803-1, 803-2, and 803-3 (asshown in FIG. 8B) corresponding to the cut image 802 based on an imagesearching algorithm, and then arrange the found application first asindicated by a reference numeral 804. For example, the controller 110may load an API that acquires lists of one or more applications storedin the terminal apparatus, identify the one or more applications storedin the terminal apparatus, and search for the icon images 803-1, 803-2,and 803-3 (see FIG. 8B) corresponding to the cut image 802 in iconimages of the identified one or more applications.

Alternatively, as illustrated in FIG. 8C, the controller 110 may receivea user input through a writing input 805 or a character input from theuser, search for an application file name (application name orapplication type) corresponding to the user input based on a charactersearching algorithm, and then arrange the found application 806 first.For example, the controller 110 may load an API that acquires lists ofone or more applications stored in the terminal apparatus, identify theone or more applications stored in the terminal apparatus, and searchfor an application corresponding to the writing input 805 or thecharacter input in file names (application names or application types)of the identified one or more applications. In operation 215, thecontroller determines whether the GUI is set; if the GUI is notcompletely set, operations 213-215 are repeated.

The controller 110 may further perform operation 216 of storing data(for example, GUI data) configured through the above described process.Referring to FIGS. 9A to 9C, the GUI data may include GUI imageinformation 910 and object information 920. The GUI image information910 includes information on an image input by the user, for example, aGUI image identifier 911 and GUI image data 912 including an image valueinput to be used as the GUI. The object information 920 may include anobject identifier 921 for identifying one or more object areas includedin the GUI image, object area data 922 indicating the object area (forexample, a position where the object area exists or a range of an areawhere the object area exists), and an application identifier 923connected to the object area. In addition, since one or more objectareas may be included within the GUI image, it is apparent that theobject area 920 may include the object identifiers 921 corresponding tothe number of object areas included in the GUI image, object area data922, and application identifiers 923.

FIG. 10 is a flowchart illustrating another embodiment of a GUIproviding method according to an embodiment of the present disclosure.FIG. 11 illustrates an example of an operation for setting a widget dataarea used for a GUI providing method according to an embodiment of thepresent disclosure.

Referring to FIGS. 10 and 11, the controller 110 determines whether theobject area selected in operation 213 corresponds to an applicationsupporting a widget function in operation 1001. The controller 110 firstcuts images included in the object area, and then searches forapplication images corresponding to the cut images 1101 and 1103 basedon an image searching algorithm. Further, the controller 110 maydetermine whether an application corresponding to the found applicationimage supports the widget function to determine whether the selectedobject area corresponds to the application providing the widgetfunction. Information on whether the application supports the widgetfunction may be stored during a process of storing the application inthe terminal apparatus, and the application providing the widgetfunction may be configured to detect and provide data to be used for thewidget function.

In searching for the application image in operation 1001, the controller110 may search for application images in images of the application iconsand images used while executing the applications. In searching for theapplication image, the controller 110 may further use similarity betweenthe cut image 1101 and 1103 and the found application image. Forexample, when similarity between the cut images 1101 and 1103 and thefound application image exceeds a predetermined threshold, thecontroller 110 may determine that the application image has been found.When the similarity is equal to or smaller than the predeterminedthreshold, the controller 110 may determine that the application imagehas not been found.

The application supporting the widget function may detect data relatedto the time, detect data related to a schedule of a “watch application”providing the detected data through a predetermined area of the widget,and include a “calendar application” providing the detected data througha predetermined area of the widget. Although the “watch application” andthe “calendar application” which can provide relatively simple datathrough the widget have been described as examples in consideration ofthe fact that the embodiment of the present disclosure is configured touse the image input by the user as the GUI, the present disclosure isnot limited thereto and the application supporting the widget functionmay be variously modified or applied.

When the selected object area corresponds to the application supportingthe widget function, the controller 110 detects areas 1102 and 1104through which widget data is provided from the images 1101 and 1103included in the object area, in order to implement the widget functionin the object area. For example, when the selected object areacorresponds to the “watch application” in operation 1001, the controller110 detects the area 1104 into which data related to the time isinserted from the image 1103 included in the object area. In operation1003, the controller 110 may display the detected area reflecting thedata (for example, a current date, a current time and the like) relatedto the time.

When the selected object area does not correspond to the applicationsupporting the widget function, the controller 110 displays theapplication list 801 (as shown in FIG. 8A) including lists of one ormore applications stored in the terminal apparatus on the touch screen171 in operation 1004. The application list may include one or moreapplications stored in the terminal apparatus, and the controller 110may arrange and display the one or more applications in consideration ofuse frequency, a size of capacity of the application, and a characterarrangement order (for example, Korean alphabetical order or an Englishalphabetical order). In arranging the one or more applications, thecontroller 110 may arrange an application having relatively highsimilarity with the object area to be used for the GUI first, in orderto more easily select the application to be connected to the objectarea. For example, after cutting an image included in the object area,the controller 110 may search for icon images 803-1, 803-2, and 803-3(as shown in FIG. 8B) corresponding to the cut image 802 based on animage searching algorithm, and then arrange the found application first.Alternatively, the controller 110 may receive a user input through awriting input 805 (as shown in FIG. 8C) or a character input from theuser, search for an application file name (application name orapplication type) corresponding to the user input based on a charactersearching algorithm, and then arrange the found application 806 first(as shown in FIG. 8C).

In operation 1005, the controller 110 receives an application to beconnected to the object area to be used for the GUI from the user.Accordingly, the controller 110 connects the received application to theobject area to be used for the GUI, so as to set a corresponding icon inoperation 1006.

As described above, according to another embodiment of operation 214 ofFIG. 4 described with respect to FIG. 10, the GUI data may be configureddifferently depending on whether the selected object area corresponds tothe application supporting the widget function. Accordingly, thecontroller 110 may configure the GUI data constructed in operation 216differently in accordance with another embodiment of operation 214.

Referring to FIG. 9D, the controller 110 may allow the objectinformation 920 included in the GUI data 900 to further includeapplication type information 924 indicating a type of the applicationtogether with the object identifier 921, the object area data 922, andthe application identifier 923. The application type information 924 mayinclude information indicating whether the object area corresponds tothe application supporting the widget function. Further, when datastored in the application type information 924 indicates that the objectarea corresponds to the application which does not support the widgetfunction, it is not required to separately store data related to thewidget function. When the data stored in the application typeinformation 924 indicates that the object area corresponds to theapplication supporting the widget function, the controller 110 mayconfigure the object information 920 to further include the data relatedto the widget function. Accordingly, when the data stored in theapplication type information 924 indicates that the object areacorresponds to the application supporting the widget function, thecontroller 110 may configure the object information 920 to furtherinclude information on an area to which the widget function is appliedwithin the object area, such as widget data area information 925 andwidget data 926. The widget data area information 925 may includeinformation indicating a range of a widget data area. Further, thewidget data 926 may directly store data provided by the widget functionor include information on a link through which a connection to the dataprovided by the widget function is made.

FIG. 12 is a flowchart illustrating another example of a process ofexecuting an application by using a GUI provided to a GUI providingmethod according to an embodiment of the present disclosure. FIGS. 13Aand 13B illustrate an example of an operation of executing anapplication using a writing input through a GUI provided to a GUIproviding method according to an embodiment of the present disclosure.

Referring to FIGS. 2, 12, and 13A-13B, when a user input event occurs inoperation 220, the controller 110 determines whether the user inputevent is a writing input in operation 1201. When the user input event isnot the writing input in operation 1201, the controller 110 executes theapplication corresponding to an icon existing in the area determined inoperation 220 in operation 1202.

When the user input event is the writing input in operation 1201, thecontroller 110 performs an operation of detecting a value of the writinginput in operation 1203. The controller 110 preferentially loads theapplication corresponding to the icon existing in the area determined inoperation 220, and reflects the value of the writing input to process anoperation of the corresponding application in operation 1204.

For example, when the corresponding application is a “web searchingapplication”, the controller 110 may perform a web search having thevalue of the writing input as a keyword. When the correspondingapplication is a “contact number application 1301” (as shown in FIG.13A), the controller 110 may perform a contact number search having thevalue of the writing input as a keyword. When the correspondingapplication is a “call application”, the controller 110 may attempt acall with the contact number corresponding to the writing input value asthe keyword. When the corresponding application is a “messagingapplication”, the controller 110 may generate a messaging windowconfigured to transmit a message to a corresponding user such that themessage is transmitted to the contact number corresponding to the valueof the writing input as the keyword. When the corresponding applicationis a “calendar application 1302” (as shown in FIG. 13B), the controller110 may search for a schedule based on the writing input value as thekeyword, or perform an operation of generating the schedule based on thewriting input value as the keyword. When the corresponding applicationis a “watch application”, the controller 110 may set the alarm for thetime corresponding to the value of the writing input. When thecorresponding application is a “music play application”, the controller110 may search for or reproduce music based on the writing input valueas the keyword.

In another example, the controller 110 may perform an operation shown inTable 1 below based on the writing input value.

TABLE 1 Value of Corresponding Application writing input processingoperation Camera V Video photographing operation C Camera photographingoperation Watch A Alarm setting operation S Stopwatch operation T Timeroperation Music play R Random music play operation S Play end operation

Although the embodiment of the present disclosure has described theoperation of processing the corresponding application based on thewriting input value, the present disclosure is not limited thereto andit is apparent that various modifications and applications can be madeby to those skilled in the art.

Further, although the value of the writing input has been described asan example, it is apparent that various user gesture inputs can be usedfor the value of the writing input as an alternative. For example, inoperation 1101, the controller 110 determines whether the user inputevent is a gesture input. When the user input event is the gesture inputin operation 1101, the controller 110 performs an operation of detectinga value of the gesture input in operation 1103. The controller 110preferentially loads the application corresponding to the icon existingin the area determined in operation 220, and reflects the value of thewriting input to process an operation of the corresponding applicationto in operation S1104. For example, when the corresponding applicationis the “calendar application”, the controller 110 may perform anoperation of displaying a schedule set before or after the current timebased on the gesture input. When the corresponding application is the“music play application”, the controller 110 may reproduce music listedbefore or after the currently played music on the list.

It will be appreciated that the various embodiments of the presentdisclosure may be implemented in a form of hardware, software, or acombination of hardware and software. Any such software may be stored,for example, in a volatile or non-volatile storage device such as a ROM,a memory such as a RAM, a memory chip, a memory device, or a memoryintegrated circuit, or a recordable optical or magnetic medium such as aCD, a DVD, a magnetic disk, or a magnetic tape, regardless of itsability to be erased or its ability to be re-recorded. A web widgetmanufacturing method of the present disclosure can be realized by acomputer or a portable terminal including a controller and a memory, andit can be seen that the memory corresponds to an example of the storagemedium which is suitable for storing a program or programs includinginstructions by which the various embodiments of the present disclosureare realized, and is machine readable. Accordingly, the presentdisclosure includes a program for a code implementing the apparatus andmethod described in the appended claims of the specification and amachine (a computer or the like)-readable storage medium for storing theprogram.

Moreover, the above-described mobile terminal can receive the programfrom a program provision device which is connected thereto in a wired orwireless manner, and store the program.

A program providing apparatus may include a program includinginstructions to perform a preset contents protection method, a memoryfor storing information required for the contents protection method, acommunication unit for performing wired or wireless communication, and acontroller for controlling program transmission. When receiving arequest for providing the program from a portable terminal, the programproviding apparatus may provide the program to the portable terminalthrough a wire or wirelessly. Further, even when there is no request forproviding the program from the portable terminal, for example, when theportable terminal is located within a particular place, the programproviding apparatus may provide the program to the portable terminalthrough a wire or wirelessly.

While the present disclosure has been shown and described with referenceto various embodiments thereof, it will be understood by those skilledin the art that various changes in form and details may be made thereinwithout departing from the spirit and scope of the present disclosure asdefined by the appended claims and their equivalents.

What is claimed is:
 1. A method of providing a Graphical User Interface(GUI) by a terminal, the method comprising: receiving an image to beused for the GUI; selecting one or more object areas to be used for theGUI from the image; setting a GUI icon corresponding to the selectedobject area; and outputting the set GUI as a home screen for executingat least one of application on a display of the terminal.
 2. The methodof claim 1, wherein the image includes a drawing image formed based on auser input.
 3. The method of claim 1, wherein the setting of the GUIicon corresponding to the selected object area comprises: providing anapplication list including at least one application executed in theterminal; and selecting the one or more applications to be used as theGUI icon from the application list.
 4. The method of claim 3, whereinthe providing of the application list comprises displaying anapplication list including at least one applications stored in theterminal.
 5. The method of claim 3, wherein the providing of theapplication list comprises providing an application list including atleast one application corresponding to an image to be used for the GUI.6. The method of claim 5, wherein the providing of the application listcomprises displaying an application list including at least oneapplication stored in the terminal such that at least one applicationhaving high similarity with the image to be used for the GUI aredisplayed in a descending order.
 7. The method of claim 3, wherein theproviding of the application list comprises: receiving a character froma user; and providing an application list including at least oneapplication corresponding to the received character.
 8. The method ofclaim 7, wherein the providing of the application list comprisesdisplaying an application list including at least one application storedin the terminal such that at least one application having highsimilarity with the received character are displayed in a descendingorder.
 9. The method of claim 1, wherein the setting of the GUI iconcorresponding to the selected object area comprises setting at least oneobject area as an icon execution area.
 10. The method of claim 1,wherein the setting of the GUI icon corresponding to the selected objectarea comprises setting an object area set by a user as an icon executionarea.
 11. The method of claim 1, further comprising: receiving aselected GUI icon from a user; and executing an applicationcorresponding to the GUI icon.
 12. The method of claim 11, furthercomprising: receiving a user input by the object area; and executing,based on the user input, an application corresponding to the objectarea.
 13. A terminal apparatus comprising: a touch screen configured todisplay information and to detect a touch input event input by a user;one or more controllers; and a memory configured to store one or moreinput images and to stores at least one or more programs, wherein the atleast one or more programs is configured to be executed by thecontroller, to include a command for receiving an image to be used for aGraphical User Interface (GUI), selecting one or more object areas to beused for the GUI from the image and for setting a GUI icon correspondingto the selected object area, and outputting the set GUI as a home screenfor executing at least one of application on a display of the terminal.14. The terminal apparatus of claim 13, wherein the image includes adrawing image formed based on a user input.
 15. The terminal apparatusof claim 13, wherein the at least one program includes a command forproviding an application list including at least one applicationexecuted in the terminal, and selecting the at least one applications tobe used as the GUI icon from the application list.
 16. The terminalapparatus of claim 15, wherein the at least one program includes acommand for displaying an application list including at least oneapplication stored in the terminal.
 17. The terminal apparatus of claim15, wherein the at least one program includes a command of displaying anapplication list including one or more applications stored in theterminal such that at least one application having high similarity withthe image to be used for the GUI are displayed in a descending order.18. The terminal apparatus of claim 15, wherein the at least one programincludes a command of displaying an application list including one ormore applications stored in the terminal such that at least oneapplication having high similarity with the image to be used for the GUIare displayed in a descending order in response to receiving a characterfrom a user.
 19. The terminal apparatus of claim 13, wherein the atleast one program includes a command for executing an applicationcorresponding to the GUI icon in response to receiving a selected GUIicon from a user.
 20. The terminal apparatus of claim 19, wherein the atleast one program includes a command of executing, reflecting the userinput, an application corresponding to the object area in response toreceiving a user input by the object area.